package com.ruoyi.web.plan.domain;

import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.framework.aspectj.lang.annotation.Excel;
import com.ruoyi.framework.web.domain.BaseEntity;

/**
 * 项目信息对象 project
 *
 * @author ruoyi
 * @date 2024-11-30
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class Project extends BaseEntity {
    private static final long serialVersionUID = 1L;

    /**
     * id
     */
    @TableId(type = IdType.AUTO)
    private Long projectId;

    /**
     * 项目名称
     */
    @Excel(name = "项目名称")
    private String projectName;

    /**
     * 项目内容
     */
    @Excel(name = "项目内容")
    private String projectInfo;


    /**
     * 0未开始1进行中2暂停3结束
     */
    @Excel(name = "0未开始1进行中2暂停3结束")
    private String state;

    /**
     * 开始时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "开始时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date startTime;
    /**
     * 截至日期
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "截至日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date endTime;


    @Excel(name = "排序")
    private int orderNum;
    /**
     * 项目负责人id
     */
    @Excel(name = "项目负责人id")
    private Long chargeId;

    /**
     * 项目负责人名字
     */
    @Excel(name = "项目负责人名字")
    private String chargeName;

    /**
     * 0未删除1删除
     */
    private String delFlag;

    /**
     * 0未超时，1超时
     */
    @Excel(name = "0未超时，1超时")
    private String timeoutState;

    /**
     *
     */
    private String peopleIds;

    /**
     *
     */
    @TableField(exist = false)
    private List<Long> userIdList;
}
